home *** CD-ROM | disk | FTP | other *** search
/ 100 Plus Great Games 2 / 100PLUSV2.BIN / games / SphereShift.dxr / Internal_5_game pieces.ls < prev    next >
Encoding:
Text File  |  2002-01-25  |  1.1 KB  |  54 lines

  1. property spriteNum, mydirect, newloc, myColor
  2.  
  3. on new me, mySpriteNum
  4.   me.spriteNum = mySpriteNum
  5.   me.myColor = symbol(sprite(spriteNum).member.name)
  6.   return me
  7. end
  8.  
  9. on MoveThis me, direc
  10.   mydirect = me.deterMine(direc)
  11.   newloc = sprite(me.spriteNum).loc + point(sprite(me.spriteNum).width * mydirect[1], sprite(me.spriteNum).height * mydirect[2])
  12.   (the actorList).add(me)
  13. end
  14.  
  15. on deterMine me, SumNum
  16.   if SumNum = #left then
  17.     return [-1, 0]
  18.   else
  19.     if SumNum = #right then
  20.       return [1, 0]
  21.     else
  22.       if SumNum = #up then
  23.         return [0, -1]
  24.       else
  25.         if SumNum = #down then
  26.           return [0, 1]
  27.         end if
  28.       end if
  29.     end if
  30.   end if
  31. end
  32.  
  33. on getRid me
  34.   s = the ticks + 5
  35.   repeat while the ticks < s
  36.     nothing()
  37.   end repeat
  38.   sprite(me.spriteNum).loc = point(-300, -300)
  39. end
  40.  
  41. on stepFrame me
  42.   if sprite(me.spriteNum).loc <> newloc then
  43.     sprite(me.spriteNum).loc = sprite(me.spriteNum).loc + point(mydirect[1], mydirect[2])
  44.   else
  45.     if sprite(me.spriteNum).loc = newloc then
  46.       me.cleanMe()
  47.     end if
  48.   end if
  49. end
  50.  
  51. on cleanMe me
  52.   (the actorList).deleteOne(me)
  53. end
  54.